The Join Structure
QuickDraw GX allows you to specify a join shape to be drawn at the corners of another shape's contours. In particular, you may specify a join shape for any rectangle, polygon, or path shape that has an open-frame shape fill or a closed-frame shape fill.
QuickDraw GX uses the join property of a shape's style object to store information about the join of the shape.
- For shapes with the closed-frame shape fill, QuickDraw GX draws the specified join shape at every on-curve geometric point of each contour.
- For shapes with the open-frame shape fill, QuickDraw GX draws the specified join shape at every on-curve geometric point between the first point and the last point of each contour.
You use the join structure when specifying join information (using the
GXSetStyleJoin
orGXSetShapeJoin
functions) and when retrieving join information (using theGXGetStyleJoin
orGXGetShapeJoin
functions).The join structure is defined by the
gxJoinRecord
data type:
struct gxJoinRecord { gxJoinAttributeattributes; gxShape join; Fixed miter; };See "Joins" beginning on page 3-25, "Adding Joins to a Shape" beginning on page 3-61, and "Adding Standard Joins to a Shape" beginning on page 3-64 for examples of joins.
Field Description
attributes
- Allows you to specify a level join, or to specify one of two standard types of joins: sharp joins and curve joins. The next section, "Join Attributes," describes the
gxJoinAttribute
flags in detail.join
- Specifies what the join should look like. You must use shapes in their primitive form for the join shape. (Primitive shapes are described in detail in Chapter 4, "Geometric Operations," in this book.) You may not use framed shapes, shapes with an inverse shape fill, full shapes, text shapes, glyph shapes, layout shapes, bitmap shapes, or picture shapes as the join shape.
- QuickDraw GX considers only the geometric properties (the shape type, the shape fill, and the shape geometry) of the shape specified by the
join
field. QuickDraw GX ignores the owner count, shape tags, and shape attributes properties and the style, ink, and transform objects of the join shape.- You set this field to
nil
when you want to specify a standard join: a sharp join or curve join.miter
- Used to truncate sharp joins. See the next section, "Join Attributes," for more information about sharp joins.
Main | Page One | What's New | Apple Computer, Inc. | Find It | Contact Us | Help